package ldh.im.base.dao;

import ldh.im.base.pojo.ImGroupUser;
import ldh.im.base.pojo.where.ImGroupUserWhere;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author: ldh
* @date: 2024-03-21 10:36:17
*/
public interface ImGroupUserDao {

	Integer insert(ImGroupUser imGroupUser);

	Integer insertSelective(ImGroupUser imGroupUser);

	Integer updateByGroupIdAndUserId(ImGroupUser imGroupUser);
	
	Integer updateNotNullByGroupIdAndUserId(ImGroupUser imGroupUser);
	
	Integer deleteByGroupIdAndUserId(@Param("groupId") Long groupId, @Param("userId") String userId);

	Integer updateById(ImGroupUser imGroupUser);
	
	Integer updateNotNullById(ImGroupUser imGroupUser);
	
	Integer deleteById(Long id);

	ImGroupUser getByGroupIdAndUserId(@Param("groupId") Long groupId, @Param("userId") String userId);

	ImGroupUser getById(Long id);

	List<ImGroupUser> findByImGroupUserWhere(ImGroupUserWhere imGroupUserWhere);
	
	Long findTotalByImGroupUserWhere(ImGroupUserWhere imGroupUserWhere);
	
	
}
